package com.example.smartagrisys.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 消息通知实体
 */
@Data
@TableName("notification")
public class Notification {

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 用户ID
     */
    @TableField("user_id")
    private Long userId;

    /**
     * 消息标题
     */
    @TableField("title")
    private String title;

    /**
     * 消息内容
     */
    @TableField("content")
    private String content;

    /**
     * 消息类型：system-系统消息，order-订单消息，warning-提醒消息，price-价格消息
     */
    @TableField("type")
    private String type;

    /**
     * 是否已读：0-未读，1-已读
     */
    @TableField("is_read")
    private Boolean isRead;

    /**
     * 关联路由（可选，用于跳转）
     */
    @TableField("action_route")
    private String actionRoute;

    /**
     * 操作文本（可选，例如"查看订单"）
     */
    @TableField("action_text")
    private String actionText;

    /**
     * 操作类型（可选）
     */
    @TableField("action_type")
    private String actionType;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 已读时间
     */
    @TableField("read_time")
    private LocalDateTime readTime;

    /**
     * 是否删除：0-未删除，1-已删除
     */
    @TableField("deleted")
    private Boolean deleted;
} 